package santeclair.referentiel.optique.tarification.bean.detailTarif;

import java.math.BigDecimal;
import java.util.List;

import santeclair.lunar.framework.annotation.ToString;
import santeclair.lunar.framework.util.ToStringUtils;

public class DetailTarif {

    @ToString
    private final StatutTarif statutTarif;
    @ToString
    private final String message;

    @ToString
    private final Tarif tarifMateriau;
    @ToString
    private final Tarif tarifSurface;

    @ToString
    private final List<Tarif> tarifTraitements;

    @ToString
    private final Tarif tarifSupplementCylindre;
    @ToString
    private final Boolean isDomTom;

    @ToString
    private final BigDecimal total;

    DetailTarif(final StatutTarif statutTarif, final String message, final Tarif tarifMateriau, final Tarif tarifSurface, final List<Tarif> tarifTraitements,
                final Tarif tarifSupplementCylindre,
                final Boolean isDomTom, final BigDecimal total) {
        super();
        this.statutTarif = statutTarif;
        this.message = message;
        this.tarifMateriau = tarifMateriau;
        this.tarifSurface = tarifSurface;
        this.tarifTraitements = tarifTraitements;
        this.tarifSupplementCylindre = tarifSupplementCylindre;
        this.isDomTom = isDomTom;
        this.total = total;
    }

    /**
     * @return the statutTarif
     */
    public StatutTarif getStatutTarif() {
        return statutTarif;
    }

    /**
     * @return the tarifMateriau
     */
    public Tarif getTarifMateriau() {
        return tarifMateriau;
    }

    /**
     * @return the tarifSurface
     */
    public Tarif getTarifSurface() {
        return tarifSurface;
    }

    /**
     * @return the tarifTraitements
     */
    public List<Tarif> getTarifTraitements() {
        return tarifTraitements;
    }

    /**
     * @return the tarifSupplementCylindre
     */
    public Tarif getTarifSupplementCylindre() {
        return tarifSupplementCylindre;
    }

    /**
     * @return the isDomTom
     */
    public Boolean isDomTom() {
        return isDomTom;
    }

    /**
     * @return the total
     */
    public BigDecimal getTotal() {
        return total;
    }

    /**
     * @return the message
     */
    public String getMessage() {
        return message;
    }

    @Override
    public String toString() {
        return ToStringUtils.toString(this);
    }

}
